package busenum

// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type Z主体类型 int

const (
	Z主体类型_未知  Z主体类型 = 0
	Z主体类型_卡片  Z主体类型 = 1
	Z主体类型_角色  Z主体类型 = 2
	Z主体类型_玩家  Z主体类型 = 3
	Z主体类型_队伍  Z主体类型 = 4
	Z主体类型_团队  Z主体类型 = 5
	Z主体类型_公会  Z主体类型 = 6
	Z主体类型_游戏服 Z主体类型 = 7
	// 通常一个物理节点为一个区服
	Z主体类型_区服 Z主体类型 = 8
	Z主体类型_副本 Z主体类型 = 9
)

// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type Z主体种类 int

const (
	Z主体种类_未知  Z主体种类 = 0
	Z主体种类_角色  Z主体种类 = 2
	Z主体种类_玩家  Z主体种类 = 3
	Z主体种类_队伍  Z主体种类 = 4
	Z主体种类_团队  Z主体种类 = 5
	Z主体种类_公会  Z主体种类 = 6
	Z主体种类_游戏服 Z主体种类 = 7
	// 通常一个物理节点为一个区服
	Z主体种类_区服 Z主体种类 = 8
	Z主体种类_副本 Z主体种类 = 9
	Z主体种类_单位 Z主体种类 = 10
	Z主体种类_物品 Z主体种类 = 11
	Z主体种类_技能 Z主体种类 = 12
	Z主体种类_资源 Z主体种类 = 13
	Z主体种类_宝石 Z主体种类 = 14
	Z主体种类_属性 Z主体种类 = 15
)

// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type E对象种类 int

const (
	E对象种类_当前对象 E对象种类 = 0
	E对象种类_角色   E对象种类 = 2
	E对象种类_玩家   E对象种类 = 3
	E对象种类_队伍   E对象种类 = 4
	E对象种类_团队   E对象种类 = 5
	E对象种类_公会   E对象种类 = 6
	E对象种类_游戏服  E对象种类 = 7
	E对象种类_区服   E对象种类 = 8
	E对象种类_副本   E对象种类 = 9

	E对象种类_单位 E对象种类 = 10
	E对象种类_物品 E对象种类 = 11
	E对象种类_技能 E对象种类 = 12
	E对象种类_资源 E对象种类 = 13
	E对象种类_宝石 E对象种类 = 14
	E对象种类_属性 E对象种类 = 15

	E对象种类_所在主体 E对象种类 = 20
	E对象种类_父主体  E对象种类 = 21
	E对象种类_所在对象 E对象种类 = 23
	E对象种类_父对象  E对象种类 = 24
	E对象种类_主控单位 E对象种类 = 25
	// 用于任务
	E对象种类_起源任务 E对象种类 = 26
)

// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type Z主体种类_卡片 int

const (
	Z主体种类_卡片_未知 Z主体种类_卡片 = 0
	Z主体种类_卡片_单位 Z主体种类_卡片 = 10
	Z主体种类_卡片_物品 Z主体种类_卡片 = 11
	Z主体种类_卡片_技能 Z主体种类_卡片 = 12
	Z主体种类_卡片_资源 Z主体种类_卡片 = 13
	Z主体种类_卡片_宝石 Z主体种类_卡片 = 14
	Z主体种类_卡片_属性 Z主体种类_卡片 = 15
)

// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type K库体类型 int

const (
	K库体类型_未知  K库体类型 = 0
	K库体类型_角色  K库体类型 = 2
	K库体类型_玩家  K库体类型 = 3
	K库体类型_队伍  K库体类型 = 4
	K库体类型_团队  K库体类型 = 5
	K库体类型_公会  K库体类型 = 6
	K库体类型_游戏服 K库体类型 = 7
	K库体类型_区服  K库体类型 = 8
	K库体类型_副本  K库体类型 = 9
)

// 注：活动主体要与主体类型的值一致
// 场景：任务活动，如果主体是角色，表示该任务属于角色，角色可以独立完成
// 场景：任务活动，如果主体是公会，表示该任务属于公会，需要成员共同完成
// 场景：任务活动，如果主体是游戏服，表示该任务属于游戏服，如果单元为角色，需要角色共同完成，如果单元是公会
// 场景：商店活动，如果主体是游戏服，表示该商店属于游戏服，商店刷新的商品，所有玩家一样
// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type G功能主体 int

const (
	// 起源任务必须设置功能主体
	// 子任务默认为【起源任务】的类型一致
	G功能主体_自动 G功能主体 = 0
	// 属于卡片的专属副本,商店等
	// 例如魔界战记每个武器都能通过闯关获得提升
	G功能主体_卡片 G功能主体 = 1
	// 功能主体为角色时，数据默认保存在角色数据库中，转服或合服时功能数据保留
	// 场景：签到活动、七日目标、每日登陆、每日充值等每天任务
	G功能主体_角色  G功能主体 = 2
	G功能主体_玩家  G功能主体 = 3
	G功能主体_公会  G功能主体 = 6
	G功能主体_游戏服 G功能主体 = 7
	G功能主体_区服  G功能主体 = 8
	G功能主体_副本  G功能主体 = 9
)

// 当功能主体为公会、游戏服、区服或跨区时，功能单元才有效
// @schema_export --ident=schema --json
// @schema_go
// @schema_ts
type G功能单元 int

const (
	G功能单元_自动 G功能单元 = 0
	G功能单元_角色 G功能单元 = 2
	G功能单元_玩家 G功能单元 = 3
	G功能单元_队伍 G功能单元 = 4
	G功能单元_团队 G功能单元 = 5
	G功能单元_公会 G功能单元 = 6
	// 当功能主体为区服时可选
	G功能单元_游戏服 G功能单元 = 7
)

// @schema_go
// @schema_ts
type C查找主体种类 int

const (
	// 默认为对象的所在主体
	C查找主体种类_自动 C查找主体种类 = 0

	C查找主体种类_角色  C查找主体种类 = 2
	C查找主体种类_玩家  C查找主体种类 = 3
	C查找主体种类_公会  C查找主体种类 = 6
	C查找主体种类_游戏服 C查找主体种类 = 7
	C查找主体种类_区服  C查找主体种类 = 8
	C查找主体种类_副本  C查找主体种类 = 9

	// 放置到当前角色的【主控单位】卡片中
	C查找主体种类_单位 C查找主体种类 = 10
	C查找主体种类_物品 C查找主体种类 = 11
	C查找主体种类_技能 C查找主体种类 = 12
	C查找主体种类_资源 C查找主体种类 = 13

	C查找主体种类_所在主体 C查找主体种类 = 20
	C查找主体种类_父主体  C查找主体种类 = 21
	C查找主体种类_主控单位 C查找主体种类 = 25
)

// @schema_go
// @schema_ts
type C查找卡片位置 int

const (
	// 默认为对象的所在主体
	C查找卡片位置_自动 C查找卡片位置 = 0
	// 放置到当前角色的【主控单位】卡片中
	C查找卡片位置_主控单位 C查找卡片位置 = 9
	C查找卡片位置_单位   C查找卡片位置 = 10
	C查找卡片位置_物品   C查找卡片位置 = 11
	C查找卡片位置_技能   C查找卡片位置 = 12
	C查找卡片位置_资源   C查找卡片位置 = 13
)

// @schema_go
// @schema_ts
type C查找功能对象位置 int

const (
	// 默认为对象的所在主体
	C查找功能对象位置_自动  C查找功能对象位置 = 0
	C查找功能对象位置_角色  C查找功能对象位置 = 2
	C查找功能对象位置_玩家  C查找功能对象位置 = 3
	C查找功能对象位置_公会  C查找功能对象位置 = 6
	C查找功能对象位置_游戏服 C查找功能对象位置 = 7
	C查找功能对象位置_区服  C查找功能对象位置 = 8
	C查找功能对象位置_副本  C查找功能对象位置 = 9
	// 放置到当前角色的【主控单位】卡片中
	C查找功能对象位置_单位 C查找功能对象位置 = 10
	C查找功能对象位置_物品 C查找功能对象位置 = 11
	C查找功能对象位置_技能 C查找功能对象位置 = 12

	C查找功能对象位置_所在主体 C查找功能对象位置 = 20
	C查找功能对象位置_父主体  C查找功能对象位置 = 21
	C查找功能对象位置_所在对象 C查找功能对象位置 = 23
	C查找功能对象位置_父对象  C查找功能对象位置 = 24
	C查找功能对象位置_主控单位 C查找功能对象位置 = 25
	// 用于任务
	C查找功能对象位置_起源任务 C查找功能对象位置 = 26
)
